home *** CD-ROM | disk | FTP | other *** search
/ Atari Mega Archive 1 / Atari Mega Archive - Volume 1.iso / telecomm / jekl138.arc / JEKYLL.TXT < prev    next >
Text File  |  1992-11-22  |  73KB  |  1,808 lines

  1.               User manual for Jekyll version 1.38
  2.                     3rd rewrite, 4nd revision.
  3.  
  4.          Written & revised by Pascal Haakmat, 22/11/1992
  5.  
  6.      Jekyll was developed and written by Vincent Partington
  7.                        Copyright (C) 1992
  8.  
  9.   Jekyll, the protocol, is public domain. However, Jekyll as in
  10.    the ST-implementation is shareware, and should be paid for.
  11.  
  12.                   Vincent Partington
  13.                   Lindenlaan 637
  14.                   1185 LZ Amstelveen
  15.                   Holland
  16.  
  17.                   FidoNet   : 2:281/202.15
  18.                   NeST      : 90:500/202.15
  19.                   NeST-echo : N_JEKYLL
  20.                   Usenet    : vincent@nextjk.wlink.nl
  21.  
  22.  
  23.                   Pascal Haakmat
  24.                   Geerdinkhof 130
  25.                   1103 PT Amsterdam
  26.                   Holland
  27.  
  28.                   FidoNet   : 2:281/202.13
  29.                   NeST      : 90:500/202.13
  30.                   NeST-echo : N_JEKYLL
  31.  
  32. TABLE OF CONTENTS:
  33. ------------------
  34.  
  35.      Titlepage ...................................... 1
  36.      Table of contents .............................. 2
  37.  
  38.     I   : Introduction .............................. 4
  39.  
  40.           I.I  : What is Jekyll? .................... 4
  41.           I.II : Why was Jekyll called Jekyll? ...... 4
  42.           I.III: System requirements ................ 4
  43.           I.IV : Functional overview ................ 4
  44.           I.V  : Installation ....................... 4
  45.  
  46.     II  : Getting started ........................... 6
  47.  
  48.           I.I : Making a private Jekyll connection .. 6
  49.           I.II: Making a BBS Jekyll connection ...... 7
  50.  
  51.     III : Using Jekyll .............................. 8
  52.  
  53.           III.I  : Getting to know Jekyll ........... 8
  54.           III.II : The statuswindow ................. 8
  55.           III.III: Configuring Jekyll ............... 9
  56.  
  57.     IV  : The configuration files .................. 10
  58.  
  59.           IV.I  : JEKYLL.CFG ....................... 10
  60.           IV.II : JEKYLL.MAG ....................... 10
  61.           IV.III: JEKYLL.FKS ....................... 11
  62.           IV.IV : JEKYLL.BAN ....................... 11
  63.           IV.V  : JEKYLL.LOK ....................... 12
  64.           IV.VI : JEKYLL.FLO ....................... 13
  65.  
  66.     V   : Jekyll's switches ........................ 14
  67.  
  68.           V.I   : Toggle switches .................. 14
  69.           V.II  : Resume switches .................. 15
  70.           V.III : Special switches ................. 16
  71.  
  72.     VI  : More Jekyll functions .................... 19
  73.  
  74.          VI.I  : The fileselector .................. 19
  75.          VI.II : The send queue .................... 20
  76.          VI.III: The fileviewer .................... 21
  77.          VI.IV : The host mode ..................... 21
  78.          VI.V  : The terminal ...................... 21
  79.          VI.VI : Special features .................. 22
  80.  
  81.     VII : Shareware message ........................ 24
  82.  
  83.     VIII: Copyright notice ......................... 25
  84.  
  85.     IX  : Disclaimer ............................... 26
  86.  
  87.     X   : Credits .................................. 27
  88.  
  89.     XI  : Greetings ................................ 28
  90.  
  91.     XII : Which BBSes use Jekyll?................... 29
  92.  
  93.     Appendix A: Key overview ....................... 30
  94.     Appendix B: Troubleshooting guide .............. 31
  95.     Appendix C: Examples ........................... 32
  96.     Appendix D: Update history ..................... 35
  97.     Appendix E: Jargon guide ....................... 39
  98.  
  99. I: Introduction
  100. ===============
  101.  
  102. I.I: What is Jekyll?
  103. --------------------
  104.  
  105. Jekyll,  like  Zmodem  and Xmodem,  is a transfer  protocol  that
  106. allows errorfree filetransfer. However, Jekyll is far more power~
  107. ful,  since  it  was written for,  and on,  the  powerful  micro-
  108. computers of today.
  109.  
  110. I.II: Why was Jekyll called Jekyll?
  111. -----------------------------------
  112.  
  113. Jekyll was named after the well-known character in the book  "The
  114. strange case of dr. Jekyll & mr. Hyde" by Robert Louis Stevenson.
  115. The  book tells about the split personality of  dr.  Jekyll,  and
  116. since   Jekyll   (the  protocol)  is   capable   of   full-duplex
  117. transmission, it was thought to be a good and logical name.
  118.  
  119. I.III: System requirements
  120. --------------------------
  121.  
  122. Jekyll should run on any ST/STE/TT with TOS in ROM,  and at least
  123. half  a megabyte of memory,  though when using it in  conjunction
  124. with  Hyde 1 megabyte is required.  Jekyll will run  from  floppy
  125. disks, but a hard disk is strongly recommended.
  126.  
  127. I.IV: Functional overview
  128. -------------------------
  129.  
  130. It is pretty hard to give a full functional overview,  due to the
  131. large number of functions Jekyll sports.  However,  a few of  the
  132. most interesting features are ...
  133.  
  134.      - Full-duplex (both way) transmission of files.
  135.      - Split screen full-duplex chat.
  136.      - Host-mode, making it possible to scan the other drive.
  137.      - Fileviewer, to prevent boredom.
  138.      - Highly  configurable,   using  both  the  commandline  and
  139.        seperate configuration files.
  140.      - Little terminal, for private use of Jekyll.
  141.      - Lots of BBS-related switches.
  142.      - Data  compression  'on  the  fly',  increasing  throughput
  143.        efficiency.
  144.      - Up to 20 function keys may be defined.
  145.      - Magics supported.
  146.  
  147. I.V: Installation
  148. -----------------
  149.  
  150. Installation  is very simple:  copy JEKYLL.TTP onto  your  comms.
  151. drive/directory, and run it whenever you want to transfer a file.
  152.  
  153. However,  this  way  you will use little of Jekyll's  very  large
  154. potential!  It's best you read this whole document,  and  perhaps
  155. you could print the part about the switches.  Then you can easily
  156. set up Jekyll using Hyde.
  157.  
  158. If  you are a sysop and want to install Jekyll on your BBS as  an
  159. external protocol, refer to Appendix D: Examples.
  160.  
  161. II: Getting started
  162. ===================
  163.  
  164. II.I: Making a private Jekyll connection
  165. ----------------------------------------
  166.  
  167. Jekyll  boasts a lot of functions especially designed for a  user
  168. <-> user filetransfer, i.e. between you and a friend.
  169.  
  170. To  make a private connection,  follow the steps mentioned  below
  171. (NOTE:   this   step-by-step-guide  assumes  you've  linked   the
  172. telephone via the modem!):
  173.  
  174.      - Run  Jekyll,  with an empty commandline.  After the  title
  175.        screen has been displayed,  Jekyll will throw you into the
  176.        Jekyll terminal.
  177.  
  178.      - Call a friend that owns a copy of Jekyll,  and tell him to
  179.        run Jekyll just like you did.
  180.  
  181.      -  Now make  sure both modems are on,  and both  modems  are
  182.         Hayes-compatible.  You  should  also  check  the  current
  183.         bpsrate, and adjust it as required using F4 to F9.
  184.  
  185.      - Tell your friend to press F2,  which will cause Jekyll  to
  186.        send  'ATA' to the modem.  A sharp,  high-pitched tone  is
  187.        heard.  When  you hear  this tone,  you should  press  F1,
  188.        which  will cause Jekyll to send 'ATD' to the modem.
  189.  
  190.      -  When  you  hear the high-pitched whistles change  into  a
  191.         sort   of crackling sound,  you can safely  hang  up  the
  192.         telephone,  since the modems have made a connection (it's
  193.         even better to leave the phone off-hook,  so that you can
  194.         easily   pick  it  up  later  to   go   back   to   voice
  195.         communication).
  196.  
  197.      - The terminal will notice the connection,  and  will  enter
  198.        Jekyll automatically. You will see the title  screen again
  199.        and on the bottom line it says: "Connecting ...".
  200.  
  201.      - After  a few seconds (2 to 3,  usually) the  two  Jekyll's
  202.        will  have connected,  and you will have  entered  Jekyll.
  203.        The  screen  is  divided in three parts:  the  upper  part
  204.        shows  everything   you  type,   the  middle   part  shows
  205.        everything  your friend types,  and the lower  part  shows
  206.        how far the transfer is progressing.
  207.  
  208. Having done this, it is time to explore Jekyll. If you need help,
  209. press the [HELP] key.  You can scroll through the helptext  using
  210. cursor  keys  UP and DOWN.  You may also jump to  section  III.I:
  211. "Getting to know Jekyll".
  212.  
  213. II.II: Making a BBS Jekyll connection
  214. -------------------------------------
  215.  
  216. This  is somewhat simpler than a private  connection,  since  the
  217. modems have already connected; this part assumes you are inside a
  218. BBS, and have given the BBS the command to send you some files.
  219.  
  220.      - Select  a Jekyll  transfer  in the BBS.  How  to  do  this
  221.        depends  totally  on what BBS program is being  used.  Ask
  222.        your sysop for details.
  223.  
  224.      - Run Jekyll, using the 'Execute program ...' option in your
  225.        terminal  program  (if it has one),  or  by  quitting  the
  226.        terminal program and running Jekyll from the desktop.
  227.  
  228.      - Jekyll  will  show it's title screen,  with on the  bottom
  229.        line the message: "Connecting ...".
  230.  
  231.      - Once  connected,  you will receive the requested  file(s),
  232.        and,  depending on whether the sysop is available, you can
  233.        chat  with the sysop (if the "page" function  is  enabled,
  234.        you can even call him to the console using CTRL-J).
  235.  
  236. III: Using Jekyll
  237. =================
  238.  
  239. III.I: Getting to know Jekyll
  240. -----------------------------
  241.  
  242. Once inside Jekyll,  the screen is divided into three parts:  the
  243. upper part (henceforth called 'window'), the middle part, and the
  244. lowest part.
  245.  
  246. The upper window shows you everything you type during a transfer.
  247. It will be sent towards the other side,  which will receive it in
  248. the lower window.
  249.  
  250. The middle window shows you everything the other side types.
  251.  
  252. And  finally,  the  lower window shows you (most)  messages  from
  253. Jekyll,  what file you are currently receiving/sending, etc. etc.
  254. Jump to section III.II for information on this window.
  255.  
  256. Try  typing  something.  You  will see the  characters  you  type
  257. appearing in the upper window.  When your friend types something,
  258. those characters will appear in the middle window.
  259.  
  260. Now  we  will  send  a  file.   Press  Ctrl-F  to  call  on   the
  261. fileselector  (see  section  VI.I:   "The   fileselector").   The
  262. cursorkeys  up and down allow you to scroll through the  list  of
  263. files,  whilst pressing RETURN sends the highlighted  file.  UNDO
  264. takes you back to the chat window.
  265.  
  266. We  have made every function in Jekyll as intuitive as  possible,
  267. and you shouldn't have any trouble using them.  It might be  wise
  268. to print out Appendix A, "Key overview".
  269.  
  270. III.II: The statuswindow
  271. ------------------------
  272.  
  273. The statuswindow is used by Jekyll to show all errors,  messages,
  274. and the status of the current filetransfer.  The statuswindow  is
  275. built up like this:
  276.  
  277. <message line, where all messages arrive>
  278. Send:  <name> <sent bytes> <size>b <CPS> <time to go> <pack rate>
  279. Recv: <name> <recvd bytes> <size>b <CPS> <time to go> <pack rate>
  280.  
  281. The  <message  line>  contains all important  (and  certain  less
  282. important) messages, keep a close eye on it. Many of the messages
  283. displayed  here will also be put in the logfile.  See section  V:
  284. Jekyll's switches.
  285.  
  286. <name>  is,  in  both cases,  the filename of the  file  you  are
  287. sending/receiving.
  288.  
  289. <sent bytes/recvd bytes> respectively is the number of bytes  you
  290. have sent/received already.
  291.  
  292. <size> is the size of the file you are sending/receiving.
  293.  
  294. <CPS>  is  the  number of characters  that  are  transmitted  per
  295. second.
  296.  
  297. <time  to go> is the amount of time (in  minutes:seconds)  before
  298. the  file is finished.  This is merely a rough estimate,  and  it
  299. will give ridiculous results with very short files (smaller  than
  300. 3K).  However,  with  somewhat  larger  files  it  gives  a  good
  301. impression.
  302.  
  303. <pack  rate>  is  the percentage that  Jekyll's  compression  has
  304. shrunk  the file.  On already packed files (LZH,  ARC) this  will
  305. probably be zero percent, this is normal.
  306.  
  307. These   two   bars  also  indicate  how  far  the   transfer   is
  308. progressing: they slowly invert.
  309.  
  310. III.III: Configuring Jekyll
  311. --------------------------
  312.  
  313. Jekyll  is  highly configurable to cater for  all  the  different
  314. configurations,  setups and wishes of  people.  However,  because
  315. Jekylls  configuration possibilities are so immense,  you  should
  316. take some time to fully understand how it works.
  317.  
  318. There are two ways of configuring Jekyll:
  319.  
  320. 1) The commandline.
  321.  
  322. The commandline can be used to put switches on,  and file(s)  you
  323. want to send.  Switches that are put on the commandline  override
  324. switches    contained   in   JEKYLL.CFG   (see   section    IV.I:
  325. "JEKYLL.CFG").
  326.  
  327. 2) The configuration files.
  328.  
  329. For  default settings,  you can create a file called  JEKYLL.CFG.
  330. This  file  contains all settings you'd normally pass  using  the
  331. commandline,  except for files; these still need to be put on the
  332. commandline.
  333.  
  334. Furthermore  Jekyll  has  a JEKYLL.MAG file  for  the  magics,  a
  335. JEKYLL.FKS file for the functions keys, a JEKYLL.BAN file for the
  336. banner,  a JEKYLL.LOK for the locked paths, and a JEKYLL.FLO file
  337. that contains all files to send (only for BBS'ses, really).
  338.  
  339. Section  V,   "Jekyll's  switches",   contains  all  of  Jekyll's
  340. switches. For information on the configuration files, jump to the
  341. next section, section IV: "The configuration files.".
  342.  
  343. IV: The configuration files
  344. ===========================
  345.  
  346. A  lot of Jekyll's power lies within these  configuration  files,
  347. that  enable you to customize Jekyll to YOUR needs.  You can  use
  348. Hyde to easily create (most) of these  files,  or,  alternatively
  349. you can use a text-editor that produces plain ASCII.
  350.  
  351. IV.I: JEKYLL.CFG
  352. ----------------
  353.  
  354. JEKYLL.CFG is nothing more than a commandline in a file. The only
  355. difference is that JEKYLL.CFG cannot contain files to send  (pass
  356. these using the commandline or JEKYLL.FLO.  Or better yet,  using
  357. the built-in fileselector).
  358.  
  359. Refer  to  section  V,   "Jekyll's  switches",   for  a  complete
  360. description of all switches.
  361.  
  362. An  example JEKYLL.CFG might look like this (the arrows '->'  and
  363. beyond are not a part of the configuration file,  and should  not
  364. be included!):
  365.  
  366. [start of JEKYLL.CFG]
  367. -auto0term1cheq0pack1oser1oscr1    -> switches
  368. -bpsr2400                          -> bpsrate
  369. -blok512                           -> block size
  370. -cash16384                         -> cache size
  371. -sendD:\                           -> upload path
  372. -recvE:\DATA\DLOADS\               -> download path
  373. -logfD:\COMMS\BINKLEY\LOGFILE.LOG  -> logfile
  374. [end of JEKYLL.CFG]
  375.  
  376. Would  it have been put on the commandline,  it would  look  like
  377. this:
  378.  
  379. -auto0term1cheq0pack1oser1oscr1 -bpsr2400   -blok512 -cash16384 -
  380. sendD:\ -recvE:\DATA\DLOADS\ -logfD:\COMMS\BINKLEY\LOGFILE.LOG
  381.  
  382. Which leaves you no room for files to send ...  And it would have
  383. to  be  typed  in  everytime you run Jekyll  which  is  not  very
  384. convenient.
  385.  
  386. IV.II: JEKYLL.MAG
  387. -----------------
  388.  
  389. JEKYLL.MAG contains all the magics you want to use.  It's  format
  390. is  simple,  and consists of a number of two line  'blocks',  the
  391. first line of every block containing the 'source'  sentence,  the
  392. second  containing  the  'destination'  sentence.   The  'source'
  393. sentence is case independant, meaning that 'CASE', 'case', 'CaSe'
  394. and 'cASe' all mean the same to Jekyll.
  395.  
  396. Various control codes have been incorporated as well.
  397.  
  398. ASCII code 1 (arrow UP) or '\u' will cause the cursor to go up.
  399. ASCII  code 2 (arrow DOWN)  or '\d' will cause the cursor  to  go
  400. down.  If  the cursor  is on the lowest  line,  the  screen  will
  401. scroll up.
  402. ASCII  code 3 (arrow RIGHT) or '\r' will cause the cursor  to  go
  403. right.
  404. ASCII  code  4 (arrow LEFT) or '\l' will cause the cursor  to  go
  405. left.
  406. ASCII  code  5 (closebox) or '\c' will  cause  your  chat  window
  407. to be cleared.
  408. ASCII  code  13  (small  CR) or '\n'  moves  the  cursor  to  the
  409. beginning of the line, and one line down. If the cursor is on the
  410. last line, the screen will scroll up.
  411.  
  412. To  get  a  backslash into your JEKYLL.MAG  file,  it  should  be
  413. doubled, i.e. use '\\'.
  414.  
  415. An example JEKYLL.MAG file:
  416.  
  417. [start of JEKYLL.MAG]
  418. Pascal
  419. //Pascal\\\\
  420. Jekyll
  421. =[! Jekyll !]=
  422. [end of JEKYLL.MAG]
  423.  
  424. When  the  person  with  this  JEKYLL.MAG  file  types  'Pascal',
  425. 'pascal',  'PASCAL' or 'pAScaL' it is converted into  //Pascal\\.
  426. 'jekyll' will be converted into '=[! Jekyll !]='.
  427.  
  428. IV.III: JEKYLL.FKS
  429. ------------------
  430.  
  431. JEKYLL.FKS contains the definitions of the functionkeys. It is by
  432. far  the simplest file of all,  and consists of a maximum  of  20
  433. lines, each line defining a function key. For example:
  434.  
  435. An example JEKYLL.FKS file:
  436.  
  437. [start of JEKYLL.FKS]
  438. This text will appear when you press F1
  439. This will appear when you press F2
  440.  
  441.  
  442. And this text will appear when you press F5
  443. [end of JEKYLL.FKS]
  444.  
  445. IV.IV: JEKYLL.BAN
  446. -----------------
  447.  
  448. JEKYLL.BAN  contains  the text you want the remote  to  see  upon
  449. entering Jekyll. This may be anything you like, ranging from your
  450. name to your favorite movie.  We recommend sysops to put the name
  451. of their BBS over here,  together with some propaganda talk and their
  452. FidoNet/NeST/Olympic ... addresses and the name of the sysop.
  453.  
  454. An example JEKYLL.BAN file:
  455.  
  456. [start of JEKYLL.BAN]
  457. SuperBBS Amsterdam, phone number: +31 - 7654321
  458. Online  24 hours a day,  300 - 19200 baud!  Over 10.000 files  on
  459. download!
  460.  
  461. System Operator: Al Capone
  462. FidoNet address: 2:281/201
  463. [end of JEKYLL.BAN]
  464.  
  465. IV.V: JEKYLL.LOK
  466. ----------------
  467.  
  468. JEKYLL.LOK contains the paths you want to LOCK from the host mode
  469. (see  section  V.IV:   "The  host  mode").  It  consists  of  the
  470. paths/files  you want to lock,  AND/OR the paths/files you  DON'T
  471. want to lock.  Paths/files you want to lock should be precede  by
  472. '-' and those you want to unlock by '+'.
  473.  
  474. For  example,  let's say you've got drives A,  B and  C.  Now  if
  475. you're JEKYLL.LOK would look like this:
  476.  
  477. [start of JEKYLL.LOK]
  478. -A:\
  479. -B:\
  480. -C:\
  481. [end of JEKYLL.LOK]
  482.  
  483. ...  The  remote wouldn't be able to access any of  your  drives.
  484. However, if you add the following line:
  485.  
  486. [start of JEKYLL.LOK]
  487. -A:\
  488. -B:\
  489. -C:\
  490. +C:\AUTO\*.PRG
  491. [end of JEKYLL.LOK]
  492.  
  493. ...  The  remote would ONLY have access to all files ending  with
  494. '.PRG'  in  the AUTO folder of your drive C.  You  can  also  use
  495. wildcards on paths & drives, like this:
  496.  
  497. [start of JEKYLL.LOK]
  498. -A:\
  499. -B:\
  500. -C:\
  501. +C:\C*.*\*.PRG
  502. [end of JEKYLL.LOK]
  503.  
  504. The  remote now has access to all folders on your C:\ drive  that
  505. start with a 'C' (Coding,  Comms,  ...)., and all files contained
  506. in  those folders that have a '.PRG' extension.  A somewhat  more
  507. complicated example (assumed drives are A:\, B:\, C:\ and D:\):
  508.  
  509. [start of JEKYLL.LOK]
  510. -A:\
  511. -B:\
  512. -C:\
  513. -D:\
  514. +D:\UTILS\
  515. -D:\UTILS\SECRET\
  516. [end of JEKYLL.LOK]
  517.  
  518. This gives the user access to your D:\UTILS\ directory, but locks
  519. out the D:\UTILS\SECRET\ folder inside it.
  520.  
  521. IV.VI: JEKYLL.FLO
  522. -----------------
  523.  
  524. The  JEKYLL.FLO  file may contain filenames  that  Jekyll  should
  525. send. It is a simple succession of filenames. If you put a '^' in
  526. front of a file it will be deleted when it has been transmitted.
  527.  
  528. [start of JEKYLL.FLO]
  529. D:\TEST.PRG
  530. E:\DATA\MUSIC\STING.MOD
  531. ^D:\COMMS\MAIL.PKT
  532. [end of JEKYLL.FLO]
  533.  
  534. V: Jekyll's switches
  535. ====================
  536.  
  537. The   switches  are  used  to  customize  Jekyll  to   your   own
  538. environment,  and  can be passed using either the commandline  or
  539. JEKYLL.CFG. Whichever way you choose to use, the switches must be
  540. preceded by a '-'.
  541.  
  542. V.I: Toggle switches
  543. --------------------
  544.  
  545. These switches cater for many different needs.  Most of them  can
  546. be set to either on (1) or off (0).  -logl and -hand can take  on
  547. four different values.
  548.  
  549. help or ?:     These are no toggle switches,  actually.  You  can
  550.                use them to display the HELP screen.
  551.  
  552. test0/1:  Enable test mode. Default: 0/off. When you put this on,
  553.           you  can  use Jekyll without connecting -  Jekyll  will
  554.           connect with itself. This way, you can check your setup
  555.           and  adjust it as required without logging in on  BBSes
  556.           all the time.
  557.  
  558. auto0/1:  Terminate when done. Default: 0/off. This causes Jekyll
  559.           to quit when all files have been sent and received.
  560.  
  561. cheq0/1:  Check diskspace. Default: 0/off. Putting this switch on
  562.           will cause Jekyll to check whether there's enough  room
  563.           left on the disk before receiving a file. BBSses should
  564.           put this on (cheq1).
  565.  
  566. hand0/1/2/3:   Set handshake  method.  Default:  2/RTS/CTS.  This
  567.               determines the kind of hardware handshaking Jekyll
  568.           should use. 0 stands for nothing, 1 for XON/XOFF, 2 for
  569.           RTS/CTS and 3 stands for both methods.
  570.  
  571. host0/1:  Allow host mode.  Default:  1/on.  The host mode allows
  572.           the remote to request files from your drive(s).  If you
  573.           don't want him to, turn it off.
  574.  
  575. hstm0/1:  HST mode.  Default:  0/off.  This switch should only be
  576.           used  when you have a HST modem,  and are  transferring
  577.           with another HST modem (NOTE:  if you put HST mode  on,
  578.           and the other side doesn't,  HST mode will be activated
  579.           anyway!).
  580.  
  581. iled0/1:  "Smart" LED's.  Default:  0/off.  This switch should be
  582.           used  by diskbased users (iled1).  It's not  necessary,
  583.           but will improve transfer-convenience.
  584.  
  585. logl0/1/2/3:   Set loglevel. Default: 3/everything. This sets the
  586.                Level of Log (new spectacular  SF-book,  no,  just
  587.                kidding)   ...   When   put   to   3,   everything
  588.           gets  logged,  when  put to 0 only  severe  errors  are
  589.           logged. 1 & 2 are in-between values.
  590.  
  591. port[port]:    Sets  the port Jekyll should  use.  Default:  1/ST
  592.                serial.  You can use this switch to transfer along
  593.                the  MIDI  port,  or you can make use  of  the  TT
  594.           serial ports.  1 = ST serial,  3 = MIDI,  6 = Modem #1,
  595.           7 = Modem #2, 8 = serial #1, 9 = serial #2.
  596.  
  597. nocd0/1:  Don't check carrier.  Default:  0/off.  Turning this on
  598.           will  cause Jekyll not to watch the CD,  which in  most
  599.           cases  means the modems have  a  connection.  Normally,
  600.           Jekyll disconnects when the carrier is gone.
  601.  
  602. oscr0/1:  Use own screen routines.  Default:  1/on.  With the own
  603.           screen  routines,  the  screen  scrolling  is  somewhat
  604.           faster. If your screen messes up, turn it off.
  605.  
  606. oser0/1:  Use own RS232 routines.  Default: 1/on. This determines
  607.           whether  Jekyll  should use it's  own,  built-in  RS232
  608.           routines.  If it doesn't work on your machine,  turn it
  609.           off.
  610.  
  611. pack0/1:  Compress   data.   Default:   1/on.   Turning   it   on
  612.           consumes   as  much  as  60K  of   memory,   but   will
  613.           increase throughput  efficiency  remarkably  on   files
  614.           that  aren't already  packed.  If there is  not  enough
  615.           memory,  data compression will automatically be  turned
  616.           off.
  617.  
  618. page0/1:  Allow paging.  Default:  1/on.  If you don't want to be
  619.           paged, turn this off.
  620.  
  621. part0/1:  Delete uncompleted files.  Default:  0/off.  When  this
  622.           switch is on,  all files that haven't fully come across
  623.           are deleted.
  624.  
  625. term0/1:  Enter  terminal.  Default:  1/on.  This  switch  causes
  626.           Jekyll  to enter a simple (VERY SIMPLE!) terminal  when
  627.           you execute Jekyll without a carrier (see section  V.V:
  628.           "The terminal").
  629.  
  630. V.II: 'Exist' switches
  631. ----------------------
  632.  
  633. When you receive a file that has the same name as a file in  your
  634. download folder,  Jekyll will ask you whether you want to resume,
  635. delete,  skip or rename the file.  The 'exist' switches will cause
  636. one answer to be the default. They are ...
  637.  
  638. askx:  Ask resume/delete/skip/rename. This is the default setting.
  639.  
  640. resx:  Always resume the file.  Jekyll will compare the  incoming
  641.        and   the  already  existing  file.   When   they're   not
  642.        identical,  Jekyll  will delete the existing file &  start
  643.        receiving the incoming.  When they ARE  identical,  Jekyll
  644.        assumes the existing file did not fully come across in  an
  645.        earlier transfer,  and will to append the incoming file to
  646.        the existing file.
  647.  
  648. delx:  Always  delete  the  existing  file.  Jekyll  will  simply
  649.        delete the  existing  file  on  disk,   and  receive   the
  650.        incoming file.
  651.  
  652. skpx:  Always  skip the incoming file.  Jekyll will  just  ignore
  653.        the incoming file.
  654.  
  655. renx:  Always rename the existing file.  The file on disk will be
  656.        renamed,  and the incoming file will be received. The file
  657.        on  disk  (assuming  it's  called  "JEKYLL.LZH")  will  be
  658.        renamed to "JEKYLL.LZ1", "JEKYLL.LZ2" and so forth.
  659.  
  660. V.III: Variable switches
  661. ------------------------
  662.  
  663. The variable switches are variable, because they require variable
  664. input.  When used,  these switches should be followed by a  SPACE
  665. and another switch denoter ('-'), like: "-blok512 -...".
  666.  
  667. appl[...]:     This  switch can be used by external  applications
  668.                to write something in the JEKYLL.CFG file.  Jekyll
  669.                simply  skips  this  switch.   Behind  "appl"  one
  670.                should put a 4-char program ID,  like: "applHyde",
  671.                and  behind  that you can put whatever  you  like,
  672.                but make sure it DOES NOT include CR's or LF's!
  673.  
  674.                Hyde uses this switch to store the path + filename
  675.                of Jekyll.
  676.  
  677. blok[block  size]:   This is used to set the default  block  size
  678.                      Jekyll should use. it defaults to 512 bytes.
  679.  
  680. bpsl[baud  rate]:    This   sets  the  baudrate  Jekyll  uses  to
  681.                      calculate whether  the  remote  has   enough
  682.                time left to request a certain file.  This is only
  683.                useful  for  BBSses, and should be passed  on  the
  684.                commandline,   by  the BBS.   When  you  use  this
  685.                switch,  you should also use the 'timl[x]' switch,
  686.                described below.
  687.  
  688. bpsr[baud  rate]:   This sets the default baudrate.  [baud  rate]
  689.                     may be any of the following numbers:
  690.  
  691.                          300 for   300 baud.
  692.                         1200 for  1200 baud.
  693.                         2400 for  2400 baud.
  694.                         4800 for  4800 baud.
  695.                         9600 for  9600 baud.
  696.                        19200 for 19200 baud.
  697.  
  698. cash[cache size]:    This switch sets the cache size.  The  cache
  699.                       size may  not be larger than  65536  bytes,
  700.                and  not smaller than 1024 bytes.  If you set  the
  701.                cache size  to 0,  they're turned off.  The  cache
  702.                size defaults to 16KB (cash16384). If there is not
  703.                enough  memory,  the caches will automatically  be
  704.                turned off.
  705.  
  706. send[path]:    This  sets  the default path  for  uploading,  or:
  707.                when first opened the fileselector will be  inside
  708.                this path.
  709.  
  710. recv[path]:    This sets the path for downloads.  Everything  you
  711.                download will be dropped over here.
  712.  
  713. cout[1st chatlog]:  This sets the path + filename of the outgoing
  714.                     chatlog.  Everything you type gets stored  in
  715.                     this file.
  716.  
  717. c_in[2nd chatlog]:  This sets the path + filename of the incoming
  718.                     chatlog.  It  contains everything the  remote
  719.                     types.
  720.  
  721. fill[no.  files]:    This   switch  sets the  maximum  number  of
  722.                      files  that can be requested by the  remote.
  723.                      Useful  for  BBSses.   By  default  one  can
  724.                request an infinite amount of files (fill0).
  725.  
  726. kbsl[no.  KB's]:    This  sets  the  maximum number of  KB's  the
  727.                     remote side can request.  Again,  only really
  728.                     useful  for BBSses.  Defaults to an  infinite
  729.                number of KB's (kbsl0).
  730.  
  731. logf[logfile]:    This   sets   the  path  +  filename   of   the
  732.                   logfile,  to  which  Jekyll  will  write  every
  733.                   notable  event  that has  happened  during  the
  734.                transfer (received files,  sent files etc.).  This
  735.                logfile  is  compatible  with  Binkley's   logfile
  736.                format.
  737.  
  738. nact[no.  minutes]:  This  sets the  amount of time  after  which
  739.                      Jekyll  should  disconnect when  there's  no
  740.                      activity  (no files being sent,  no  chatting
  741.                ...). Defaults to an infinite timeout (nact0).
  742.  
  743. pagb[HHMMHHMM]:   Set page times.  Default: 00000000/always. This
  744.                   sets the time between  which you may be  paged.
  745.                   The   format   should   ALWAYS   be   HHMMHHMM,
  746.                like:  "pagb07302330".  This allows paging between
  747.                7:30 AM and 11:30 PM.
  748.  
  749. pagl[length]:  Set page length.  Default: 60 seconds.  This  sets
  750.                the number of seconds the paging should  continue.
  751.                There's a maximum of 60 seconds.
  752.  
  753. timl[no.  minutes]:    This sets the number of minutes the remote
  754.                        has left,  before Jekyll disconnects  him.
  755.                        Again, should be passed by the BBS.
  756.  
  757. "user[username]":   This  tells  Jekyll the name  of  the  REMOTE
  758.                     user.  It was meant to be used by BBSses. The
  759.                     quote marks are absolutely  necessary!  Since
  760.                Gemini   'pre-parses'  the  commandline,   it   is
  761.                impossible  to  use  this  switch  correctly  from
  762.                within it.
  763.  
  764. code[byte]:    This will DLE-encode byte [byte].  This means that
  765.                it (the byte) will not be sent literally:  it will
  766.                be  encoded  first.  This  might  be  useful  when
  767.                working  with  other systems,  who  sometimes  get
  768.                upset by certain bytes.
  769.  
  770. VI: More Jekyll functions
  771. =========================
  772.  
  773. Jekyll  features a lot of sub-functions,  like the  fileselector,
  774. the fileviewer,  and the send queue viewer.  If you want to leave
  775. whatever  subfunction,  you can press UNDO,  which will take  you
  776. back to the chat-window.
  777.  
  778. Also,  when you're inside (for example) the fileselector, you can
  779. directly access the (for example) fileviewer,  you don't have  to
  780. go back to the chat-window first.
  781.  
  782. Universal keys you can press in all subfunctions are:
  783.  
  784. Help              : Access help screen
  785. Undo              : Back to chat screen
  786. Cursor Up         : Scroll the window up one position.
  787. Cursor Down       : Scroll the window down one position.
  788. Shift-Cursor Up   : Scroll the window up one screen.
  789. Shift-Cursor Down : Scroll the window down one screen.
  790. ClrHome           : Go  to  top of window (clears screen when  in
  791.                     chat-window).
  792. Shift-ClrHome     : Goes to end of window.
  793. Ctrl-Cursor Up    : Select next music
  794. Ctrl-Cursor Down  : Select previous music
  795. Esc               : Disable chatting, enable auto-disconnect
  796. Ctrl-+            : Play  next  music (GMUS  protocol  should  be
  797.                     available!).
  798. Ctrl--            : Play  previous music (GMUS protocol should be
  799.                     available!).
  800. Ctrl-C            : Enable chatting, disable auto-disconnect
  801. Ctrl-F            : Access local directory
  802. Ctrl-H            : Access remote directory
  803. Ctrl-I            : Abort incoming file
  804. Ctrl-J            : Page remote
  805. Ctrl-O            : Abort outgoing file
  806. Ctrl-Q            : Disconnect
  807. Ctrl-T            : Access send queue
  808. Ctrl-V            : Access view buffer
  809. Ctrl-Z            : Rotate handshake info/remote uses/user name
  810.  
  811. VI.I: The fileselector
  812. ----------------------
  813.  
  814. The fileselector can be called upon by pressing Ctrl-F.  Your own
  815. chat-window  will  dissappear,  and it will be  replaced  by  the
  816. fileselector.  The current directory will be displayed,  together
  817. with  the size of every file,  it's creation date and  the  file-
  818. attributes.  You can scroll through the list using the cursorkeys
  819. UP and DOWN.
  820.  
  821. You can press a lot of keys in the fileselector,  to send  files,
  822. to delete them, rename them or view them. A list:
  823.  
  824. Return    : Send highlighted file. When the highlighted file
  825.             is a directory, Jekyll will enter that directory.
  826. Ctrl-K    : Kill the   current   file.  Jekyll  does  ask  for
  827.             confirmation first.
  828. Ctrl-L    : Load file  into  view-buffer. A message "Loading ..."
  829.             will appear  on the message line (see section  II.II,
  830.             "The statuswindow"),    which   will   change    into
  831.             "Loaded."  when  Jekyll is ready.  You can  now  view
  832.             the file using Ctrl-V (see V.III: "The fileviewer").
  833. Ctrl-M    : This will play the highlighted file, provided that a)
  834.             you have installed the Ultraplayer 2.20 or  GigaMusic
  835.             1.4, and b) the highlighted file IS a music file.
  836. Ctrl-N    : Rename  file. You will be asked to enter the new name
  837.             of the file.
  838. Ctrl-P    : Set  receive directory. This will cause Jekyll to use
  839.             the current directory as receive directory,  i.e. the
  840.             place where all incoming files (as from now on)  will
  841.             be placed.
  842. Ctrl-W    : Enter filename  to  send.  Allows  you to enter  the
  843.             filename  of  the  file that   Jekyll  should  send.
  844.             Wildcards are accepted,  so when  you,   for example,
  845.             enter  "*.*"  Jekyll  will  send  all  files  in  the
  846.             current directory.
  847. Ctrl-X    : Enter   wildcard  for  directory.  This  will  cause
  848.             Jekyll  only to show files that  match  the  entered
  849.             wildcard.
  850.  
  851. A-Z, 0-9 & '_': These 'normal' keys activate the autolocator. For
  852.             example, when you're inside a 400 file directory, and
  853.             you want to get to a file called "K_AIMB.ACC" you can
  854.             scroll for quite some time,  but an easier way is  to
  855.             press the 'K' key.  This will cause Jekyll to jump to
  856.             the first file in the directory starting with a  'K'.
  857.             Pressing  it again will cause Jekyll to jump  to  the
  858.             next file with a 'K' (perhaps "K_BIMB.ACC").
  859.  
  860. Alt-(A-Z)  :  Pressing  Alternate  in conjunction  with  a  drive
  861. letter, that drive will be accessed in the file selector.
  862.  
  863. VI.II: The send queue
  864. ---------------------
  865.  
  866. The  send queue contains those files that still need to be  sent.
  867. It can be accessed by pressing Ctrl-T. The higher the file stands
  868. in the queue,  the sooner it will get sent.  Files can end up  in
  869. the send queue for the following reasons ...
  870.  
  871. - If  Jekyll  is currently sending a file,  and you want  to send
  872.   another,  it  is added to the queue and sent when  the  current
  873.   file is finished or aborted.
  874.  
  875. - If  the  remote side requests (see VI.IV:  "The  host  mode") a
  876.   file and Jekyll is already sending a file.
  877.  
  878. In the send queue window,  on top of the standard keys (mentioned
  879. above) you can press the following keys:
  880.  
  881. Ctrl-Y   : Kill highlighted file from send queue.  The file  will
  882.            not  be deleted  from your drive,  it will  merely  be
  883.            removed from the send queue,  and therefor it will
  884.            not be sent.
  885.  
  886. Ctrl-U   : Kills  complete send queue,  so  none  of  the  files
  887.            contained in it will be sent.
  888.  
  889. VI.III: The fileviewer
  890. ----------------------
  891.  
  892. The  fileviewer  allows  you  to take a  look  at  textfiles  and
  893. documents while transferring, which prevents boredom when there's
  894. nobody to chat with.  It is activated by pressing Ctrl-V, but you
  895. should  first load a file using the fileselector (see  V.I:  "The
  896. fileselector").
  897.  
  898. Inside  the  fileviewer the standard  keys  are  available,  plus
  899. Ctrl-M,  which  dumps the page you are currently viewing  to  the
  900. other  side.  Don't do this too often,  since the CPS  will  drop
  901. quite considerably!
  902.  
  903. VI.IV: The host mode
  904. --------------------
  905.  
  906. The host mode is one of the most fascinating features of  Jekyll.
  907. It allows you to look at the drive of the host,  and request  the
  908. files  you'd like to have.  Likewise,  Jekyll  includes  advanced
  909. methods  of locking out specific parts on your drive  (see  IV.V:
  910. "JEKYLL.LOK").
  911.  
  912. The host mode can be called upon by pressing Ctrl-H.  The message
  913. line will display:  "<Drive Selector> requested".  After a while,
  914. you  will  be thrown into the drive  selector,  showing  you  the
  915. available drives of the host.  Using the cursor keys Up and  Down
  916. you  can  scroll through the list,  and make  your  selection  by
  917. pressing Return.  Again,  the status bar will  display:  "[drive]
  918. requested", where [drive] is the drive you requested.
  919.  
  920. Using the cursor keys and Return you can request files,  like  in
  921. the  fileselector.  All  files  that you request end  up  in  the
  922. remote's send queue (see V.II: "The send queue").
  923.  
  924. Keys to press in the host mode:
  925.  
  926. Return  : Requests the highlighted file.  If the highlighted file
  927.           is a directory, Jekyll will request that directory from
  928.           the remote, and, after a short pause, enter it.
  929.  
  930. Ctrl-W  : Request using wildcards.  Jekyll will  ask  you  to
  931.           enter the wildcard to request.
  932.  
  933. VI.V: The terminal
  934. ------------------
  935.  
  936. Jekyll  features  a  built-in terminal,  that  is  entered  when:
  937. there's  no  carrier,  you execute Jekyll and you have  left  the
  938. switch on (see section V.I: "General switches").
  939.  
  940. The  terminal  is not to be used as a  full-blown  communications
  941. program like Flash,  Rufus or Trapido, it is merely there so that
  942. you  can make a easy and fast connection with a  friend,  WITHOUT
  943. having to execute one of these full-blown communication programs,
  944. that eat memory and take a long time to load, while all you do is
  945. connect and run Jekyll.
  946.  
  947. When  you execute Jekyll without a carrier,  and the terminal  is
  948. on, you will see the Jekyll introscreen, and shortly after that:
  949.  
  950. Welcome to the Jekyll v1.38 Terminal
  951. (c) by vincent Partington, xx/xx/1992
  952. Press HELP for help.
  953.  
  954. Once inside this terminal, you can press the following keys:
  955.  
  956. F1     : Send ATD to your modem, which will (in case of a modem that
  957.          understands the Hayes instruction set) pick up the phone.
  958. F2     : Send ATA to your modem, which will then attempt to connect.
  959. F3     : Toggle  autostart.  Normally,  when the terminal notices  a
  960.          carrier,  it will enter Jekyll.  However, if  you  put  the
  961.          autostart off, it won't (logical ... huh?!).
  962. F4     : Set baudrate to 300 baud.
  963. F5     : Set baudrate to 1200 baud.
  964. F6     : Set baudrate to 2400 baud.
  965. F7     : Set baudrate to 4800 baud.
  966. F8     : Set baudrate to 9600 baud.
  967. F9     : Set baudrate to 19200 baud.
  968. F10    : Hang up the modem by dropping the DTR signal.
  969. Alt-Fx : Same as Fx in chat mode, own function key definition
  970.          from JEKYLL.FKS
  971. Ctrl-D : Toggle half duplex/ful duplex
  972. Ctrl-L : Toggle linefeeds
  973. Ctrl-Q : Quit Jekyll
  974. Help   : Display helptext.
  975.  
  976. VI.VI: Special features
  977. -----------------------
  978.  
  979. GMUS music loading
  980. ------------------
  981.  
  982. Jekyll  supports the GMUS protocol:  this protocol allows you  to
  983. access music players (like the Ultraplayer II/2.20 and  GigaMusic
  984. 1.4)  from within Jekyll.  Using the GMUS protocol you  can  load
  985. music files from Jekyll without having to leave Jekyll!
  986.  
  987. A  musicfile is loaded in rather the same way as a file  for  the
  988. fileviewer:  inside  the fileselector,  you highlight  the  music
  989. file to load,  and press Ctrl-M. Using the keys Ctrl-+ and Ctrl--
  990. you can check whether this music file houses more songs. Refer to
  991. the documentation supplied with your musicplayer for more info.
  992.  
  993. JEKYLL environment variabele
  994. ----------------------------
  995.  
  996. Jekyll  uses the environment variable "JEKYLL" to  determine  the
  997. path where it should look for it's configuration files. This way,
  998. you  can  put Jekyll's configuration files in  directories  other
  999. than Jekyll's home dir. There are several programs in the PD that
  1000. allow  you to use environment variables.  Gemini &  NeoDesk  also
  1001. allow  you  to  enter  environment  variables.   Refer  to  their
  1002. documentation for more info on that.
  1003.  
  1004. Return code
  1005. -----------
  1006.  
  1007. Since v1.32 Jekyll always returns a return code. This return code
  1008. is the total amount of kilobytes that have been transferred during
  1009. the last session. This includes files that were sent via the
  1010. command-line, the FLO-file or file-selector and those requested via
  1011. the host-mode. This value can be used by shell-programs in BBS's to
  1012. recalculate the access levels for a user. So please note that it is
  1013. NOT an error level!
  1014.  
  1015. VII: Shareware message
  1016. ======================
  1017.  
  1018. Shareware  is  a concept that enables you,  the user,  to  try  a
  1019. program for free, see if you like it and only pay for it when you
  1020. do.  This does NOT mean you can use a program for weeks &  weeks,
  1021. and  afterwards throw it away without paying for  it,  since  you
  1022. "won't  be  needing  it any longer.",  or that you  can  enjoy  a
  1023. shareware  game for months,  but get stuck at the dwarf with  the
  1024. candle  and thus find the game frustrating enough not to pay  for
  1025. it!  See  it from the other side:  when you do pay  for  it,  the
  1026. author might send you the solution ...
  1027.  
  1028. Jekyll is the result of over 8 months coding,  listening to other
  1029. users,  writing  manuals and implementing new  features,  and  we
  1030. think 25 Dutch guilders is a very reasonable fee.  You should pay
  1031. that amount of money (or any amount you feel is appropriate) when
  1032. you  are making frequent use of Jekyll.  Transfer that  money  to
  1033. giro/postbank-account nr.  6347972.  If this is an  international
  1034. transfer  please use an electronic 'swift'-transfer as  the  bank
  1035. otherwise charges nearly half of it as a transfer fee.
  1036.  
  1037. Please do,  it's not just the money, it's the feedback that keeps
  1038. programmers going!
  1039.  
  1040. VIII: Copyright notice
  1041. ======================
  1042.  
  1043. Jekyll  may be freely copied and spread as long as you  do  _NOT_
  1044. charge  anything for it,  and keep all the files in  the  archive
  1045. together! It should _ALWAYS_ contain:
  1046.  
  1047. JEKYLL.TTP
  1048. JEKYLL.DOC
  1049. HYDE.PRG
  1050. HYDE.RSC
  1051. README.138
  1052.  
  1053. If  you want to ask money for Jekyll in any way,  be it in  a  PD
  1054. library,  on  a  disk  magazine or on a disk  that  goes  with  a
  1055. magazine,  this  is  can  only be done  without  prior  _WRITTEN_
  1056. permission  of  the  author,  i.e.  Vincent  Partington.  If  you
  1057. refrain  from  doing so we will not hesitate to  undertake  legal
  1058. action! And believe me: we will.
  1059.  
  1060. For PD-libraries the following arrangement _CAN_ be made: You can
  1061. sell Jekyll for any price you like,  as long as the author,  i.e.
  1062. Vincent Partington,  gets at least 50% of the _PROFITS_, i.e. the
  1063. price minus your expenses.  Those expenses can be no more than  a
  1064. reasonable amount of money for the disk, package and postage.
  1065.  
  1066. We're  very sorry we have to be this harsh,  but if  PD-libraries
  1067. start  selling  Jekyll at the price of £10 pounds  (that's  about
  1068. the  shareware donation PLUS the disk it's on!)  without  sending
  1069. us any of the money we tend to get rather pissed-off!
  1070.  
  1071. IX: Disclaimer
  1072. ==============
  1073.  
  1074. When you use this program, you do so at your own risk! Any damage
  1075. done  to either you hard- and/or software through the use  and/or
  1076. misuse of Jekyll is considered to be _YOUR_OWN_ fault!
  1077.  
  1078. However,  we both use Jekyll a lot,  and both find it a  reliable
  1079. and  solid  piece  of work.  And since we  didn't  encounter  any
  1080. serious  bugs  in any of the previous  releases,  we  think  it's
  1081. unlikely  we'll ever find one in this version,  or in any of  the
  1082. versions that is still to come.
  1083.  
  1084. If you don't agree with the given conditions,  refrain from using
  1085. Jekyll,  and  find  yourself another  full-duplex  file  transfer
  1086. protocol.
  1087.  
  1088. X: Credits (from Vincent)
  1089. ==========
  1090.  
  1091. Credit  should  go  to  the following people  from  whom  I  have
  1092. learned things or borrowed pieces of code:
  1093.  
  1094. - Erno Meffert and Jon Webb for their sources and docs on CRC's.
  1095. - Chuck Forsberg for his docs about X-,  Y- and for Zmodem itself
  1096.   ofcourse!
  1097. - Jacob Ziv  and  Abraham  Lempel  for  their  great  compression
  1098.   alghorithms (LZ77 and LZ78).
  1099. - Terry Welch for his LZW-packing algorithm.
  1100. - Mark Nelson for his LZW-packing routine I use in Jekyll,  after
  1101.   having modified it a little bit.
  1102. - Jankowski, Reschke and Rabich for their great ProfiBuch.
  1103. - Ir. Ammeraal for his very clear books on C, ANSI C and C++.
  1104. - Whoever made the Xbios-music I use as paging-music.
  1105.  
  1106. XI: Greetings (from the both of us)
  1107. ===================================
  1108.  
  1109. I,  Vincent Partington,  would like to greet the following people
  1110. who have supported me during the whole project,  who have  giving
  1111. useful suggestions:
  1112.  
  1113. - Pascal Haakmat for his suggestions,  help, support, hints, Hyde
  1114.   and these docs!
  1115. - Joop  Koopman  and Erno Meffert for showing so  much  trust  in
  1116.   Jekyll and using it in their BBSes.
  1117. - Theo  Runia  for  updating  QuickBBS  to  v1.08  -  and  hereby
  1118.   supporting Jekyll.
  1119. - Gijs  v/d  Hammen for his critical  remarks,  especially  those
  1120.   concerning screen layout. Frain lives on!!!
  1121. - Arjen Wagenaar, Folkert van Heusden, Diederik Hoogenboom, Mario
  1122.   van  den Heuvel,  Marco Dijkman and Koos Kuil for  beta-testing
  1123.   and suggestions.
  1124. - Steve Caple,  Mark Matts,  Keith Frisby,  Steve  Basford,  Jeff
  1125.   Seifert, Paul Baker and many, many more for their useful hints.
  1126.  
  1127. And,  although  I'm way out of line here,  I - Pascal  Haakmat  -
  1128. would like to greet some people as well:
  1129.  
  1130. - Vincent Partington for lot's of hints and tips.
  1131. - Olaf  Meisiek  for his  MyDial  routines,   and  his  brilliant
  1132.   resource editor Interface.
  1133. - Marike Simons.
  1134.  
  1135. XII : Which BBSes use Jekyll?
  1136. =============================
  1137.  
  1138. Following is a list of all the BBSes that I know support Jekyll.
  1139. If your BBS also supports Jekyll and you feel that your BBS should
  1140. be put in this list, drop me a netmail stating your name, the name
  1141. of your BBS and the international telephone number to your BBS and
  1142. I'll put your BBS in the list.
  1143.  
  1144. BBS                         SysOp                   Telephone number
  1145. --------------------------------------------------------------------
  1146. 68000 Subsoft BBS           Harrie Beuvink          +31-53-777552
  1147. BearBoard QuickBBS ST       Ton Ketting             +31-10-4840224
  1148. CMS Spijkenisse             Ron de Reus             +31-1880-25521
  1149. Dutch Mountains QuickBBS ST Marcel Sacksen          +31-5723-1730
  1150. QuickBBS ST Arnhem          Erno Meffert            +31-85-644262
  1151. QuickBBS ST Leeuwarden      Theo Runia              +31-58-153849
  1152. QuickBBS ST Mergelland      John Nelissen           +31-43-251127
  1153. Star Communications         Jack Wilbers            +31-46-521353
  1154. ST QuickBBS Haarlem         Joop Koopman            +31-23-340077
  1155. Willie's BBS                Koos Kuil               +31-5978-18087
  1156.  
  1157. ======================== Appendices follow ======================
  1158.  
  1159. Appendix A: Key overview
  1160. ========================
  1161.  
  1162. This appendix contains a list of all keys used by Jekyll,  with a
  1163. short description.
  1164.  
  1165. Keys you can press anywhere
  1166. ---------------------------
  1167.  
  1168. Help              : Access help screen.
  1169. Undo              : Back to chat screen.
  1170. Cursor Up         : Scroll the window up one position.
  1171. Cursor Down       : Scroll the window down one position.
  1172. Shift-Cursor Up   : Scroll the window up one screen.
  1173. Shift-Cursor Down : Scroll the window down one screen.
  1174. ClrHome           : Go to top of window (clears screen when in  chat-window).
  1175. Shift-ClrHome     : Goes to end of window.
  1176. Ctrl-Cursor Up    : Select next music.
  1177. Ctrl-Cursor Down  : Select previous music.
  1178. Esc               : Disable chatting, enable auto-disconnect.
  1179. Ctrl-C            : Enable chatting, disable auto-disconnect.
  1180. Ctrl-F            : Access local directory.
  1181. Ctrl-H            : Access remote directory.
  1182. Ctrl-I            : Abort incoming file.
  1183. Ctrl-J            : Page remote.
  1184. Ctrl-O            : Abort outgoing file.
  1185. Ctrl-Q            : Disconnect.
  1186. Ctrl-T            : Access send queue.
  1187. Ctrl-V            : Access view buffer.
  1188. Ctrl-Z            : Rotate handshake info/remote uses/user name.
  1189.  
  1190. Keys that only work in the fileselector
  1191. ---------------------------------------
  1192.  
  1193. Return        : Send the highlighted file.
  1194. Ctrl-K        : Kill highlighted file.
  1195. Ctrl-L        : Load  a  file into the fileview buffer,  which can  be
  1196.                 viewed by pressing Ctrl-V.
  1197. Ctrl-M        : Load music.
  1198. Ctrl-N        : Rename highlighted file.
  1199. Ctrl-P        : The current path will become the receive path.
  1200. Ctrl-W        : Enter a file to send, using wildcards.
  1201. Ctrl-X        : Enter an wildcard to use on the directory.
  1202. Alt-(A-Z)     : Go to drive (Alt-A takes you to drive A, etc ...).
  1203. A-Z & 0-9 & _ : Autolocator.
  1204.  
  1205. Keys that only work in the fileviewer
  1206. -------------------------------------
  1207.  
  1208. Ctrl-M        : Dump page you are currently viewing to the other side.
  1209.  
  1210. Keys that only work in the send queue
  1211. -------------------------------------
  1212.  
  1213. Ctrl-Y        : Kill highlighted file from send queue.
  1214. Ctrl-U        : Kill all files in send queue.
  1215.  
  1216. Keys that only work in the host mode
  1217. ------------------------------------
  1218.  
  1219. Return        : Request highlighted file.
  1220. Ctrl-W        : Request file using wildcards.
  1221. A-Z & 0-9 & _ : Autolocator.
  1222.  
  1223. Appendix B: Troubleshooting guide
  1224. =================================
  1225.  
  1226. Problem:  Jekyll works fine from the desktop, but fails to launch
  1227.           when executed from a terminal program.
  1228.  
  1229. Solution: This  is  probably due to lack  of  sufficient  memory.
  1230.           When you call Jekyll from a terminal, you need at least
  1231.           1  megabyte  of memory,  depending on the size  of  the
  1232.           terminal  program.  You can also try to switch off  the
  1233.           caching  (using  cash0)  and  the  compression   (using
  1234.           pack0), which gives you some 60 KB's of extra memory.
  1235.  
  1236. Problem:  Jekyll's compression doesn't work.
  1237.  
  1238. Solution: Did  you  make  sure you turned  compression  on  using
  1239.           'pack1'? If  you did,  you probably only  send  already
  1240.           compressed files,  and these files can't be  compressed
  1241.           any further by Jekyll's compression algorithm.  Already
  1242.           compressed files can be recognized by their  extension,
  1243.           which mostly is .LZH, .ARC, .ZIP, .ZOO or .ARJ.
  1244.  
  1245. Problem:  Jekyll always quits after a transfer, but I didn't turn
  1246.           on terminate when done, 'auto1'.
  1247.  
  1248. Solution: The other side may have it turned on,  and it overrides
  1249.           your setting.
  1250.  
  1251. Problem:  The drive keeps whirring.
  1252.  
  1253. Solution: If you have turned on the smart LED's switch 'i1'  this
  1254.           is  normal:  it keeps TOS from constantly engaging  the
  1255.           drive motor,  which needs time. Jekyll simply keeps the
  1256.           motor on at all times.
  1257.  
  1258. Problem:  The screen gets messed up.
  1259.  
  1260. Solution: Turn off the own screen routines, using switch 'oscr0'.
  1261.  
  1262. Problem:  I've  set  the block size to [xx]  bytes,  but  I  keep
  1263.           receiving  with a block length of [yy]  bytes!  Sending
  1264.           does go okay, though.
  1265.  
  1266. Solution: This is normal.  When the remote sets his block size to
  1267.           2048 bytes,  he will send 2048 byte blocks, and receive
  1268.           with  the block size you specified,  whatever that  may
  1269.           be. In other words: the block size's on both sides work
  1270.           completely independant from eachother.
  1271.  
  1272. Problem:  Jekyll  doesn't work under MiNT or MultiTOS!  /  Jekyll
  1273.           does hardly work under MiNT or MultiTOS!
  1274.  
  1275. Solution: We have increased MiNT / MultiTOS compatibility in this
  1276.           new version,  yet it still doesn't work  100%.  Whether
  1277.           this is because of Jekyll,  TOSWIN or the speed of  the
  1278.           ST  we don't know.  BTW,  Jekyll _does_ transfer  under
  1279.           MiNT, however the display gets messed up. Also remember
  1280.           to put off the own screen routines (oscr0).
  1281.  
  1282. Appendix D: Examples
  1283. ====================
  1284.  
  1285. Some examples might be useful to clear things up for you.  All of
  1286. these examples are seriously meant,  and can help you greatly  in
  1287. setting up your Jekyll. The arrows ('->') should not be included.
  1288.  
  1289. Example setup for HST users
  1290. ---------------------------
  1291.  
  1292. Since   HST's   aren't   capable   of   sending   and   receiving
  1293. simulteaneously,  Jekyll includes a HST mode,  that allows you to
  1294. use  Jekyll  with HST's anyway.  Jekyll will then  send  a  file,
  1295. receive one, send one, etc.
  1296. [Example JEKYLL.CFG]
  1297. -hstm1
  1298. -recv[receive path]
  1299. -send[send path]
  1300. -logf[logfile]
  1301. [End of example]
  1302.  
  1303. Example setup for BBSses
  1304. ------------------------
  1305.  
  1306. To  integrate  Jekyll  into  your BBS,  you do  need  to  have  a
  1307. reasonable amount of memory,  because Jekyll needs about 200K and
  1308. BBS programs tend to be rather big.
  1309.  
  1310. Jekyll  has  a lot of switches that enable you to  calculate  the
  1311. download time, and much more.
  1312.  
  1313. Firstly, you create a JEKYLL.CFG file looking like this:
  1314.  
  1315. [Example JEKYLL.CFG file]
  1316. -host1                 -> host mode on
  1317. -on5                   -> timeout after 5 minutes
  1318. -recv[receive path]    -> Jekyll inbound area; see below
  1319. -logf[logfile]
  1320. [End of example]
  1321.  
  1322. This JEKYLL.CFG file has the host mode enabled,  so that the user
  1323. can  request  files.   However,   if  your  BBS  program  is  not
  1324. sophisticated  enough to pass all the parameters required  for  a
  1325. good  usage of the host mode,  it might be better to turn it  off
  1326. (switch  'host1'  on  the  first  line  should  be  changed  into
  1327. 'host0').  Also remember that when you put the host mode on,  the
  1328. user has access to all of your drives;  so you'd better create  a
  1329. good JEKYLL.LOK file.
  1330.  
  1331. Then  you create a JEKYLL.BAN file,  looking like this  (this  is
  1332. only a proposition;  but to keep things standard it might be best
  1333. to use this proposition):
  1334.  
  1335. [Example JEKYLL.BAN file]
  1336. You are connected to the Super BBS, online 24h a day!
  1337.  
  1338. -> some room for advertisement <-
  1339. System operator: John Smith
  1340. FidoNet address: 1:1/1
  1341. HaasNet address: 20:20/20
  1342. -> all your other addresses here <-[End of example]
  1343.  
  1344. This JEKYLL.BAN file is not necessary,  but it's nice to have it,
  1345. being a BBS.
  1346.  
  1347. Having  managed it so far,  you still have to pass the  following
  1348. parameters to Jekyll:
  1349.  
  1350. - the files to send
  1351. - the time the user has left
  1352. - the number of kilobytes the user can request
  1353. - the number of files the user can request
  1354. - the baudrate at which the user got a connection
  1355.  
  1356. The  last three parameters are only useful when you  have  turned
  1357. the host mode on.  The commandline that the BBS passes to  Jekyll
  1358. should thus be:
  1359.  
  1360. -timl[users  amount of time left] -kbsl[KB's  requestable   (ONLY
  1361. when host mode is on] -fill[no.  files] -bpsl[baudrate] [files to
  1362. send]
  1363.  
  1364. or:
  1365.  
  1366. -timl53 -kbsl900 -fill40 -bpsl9600 GEMINI12.LZH GEMUTLS.LZH
  1367.  
  1368. Which will let Jekyll send the files GEMINI12.LZH and GEMUTLS.LZH
  1369. from the current directory.  If you turn the host mode  off,  you
  1370. won't  be  needing  the '-kbsl900',  the  '-fill40'  and  the  '-
  1371. bpsl9600' switches.
  1372.  
  1373. Files can also be sent using the JEKYLL.FLO file:  this gives the
  1374. user  an unlimited amount of files to request(the maximum  length
  1375. for the command line is 124 characters). The BBS program should then write a
  1376. JEKYLL.FLO file,  containing all the files (with full path).  For
  1377. example:
  1378.  
  1379. [start of JEKYLL.FLO]
  1380. E:\BBS\AREAS\GEMINI\GEMINI12.LZH
  1381. E:\BBS\AREAS\GEMINI\GEMUTLS.LZH
  1382. [end of JEKYLL.FLO]
  1383.  
  1384. After the transfer, the BBS program should check whether the user
  1385. sent some files,  or not. If the user did indeed send some files,
  1386. there are two things you can do. Either you ...
  1387.  
  1388. 1) ...  make a special Jekyll directory,  where all of the  files
  1389.    that are sent using Jekyll arrive (you move them to the  right
  1390.    areas later on), or ...
  1391.  
  1392. 2) ...  make a program/get a program that allows the user to move
  1393.    the  sent file from the Jekyll inbound directory to a  certain
  1394.    file-area afterwards.
  1395.  
  1396. In either case the user should be asked for a description of  the
  1397. file he just uploaded.
  1398.  
  1399. Appendix D: Update history
  1400. ==========================
  1401.  
  1402. Jekyll  has  evolved since version 0.91beta,  and  lot's  of  new
  1403. features have been added from version to version ...  The  update
  1404. history (in chronological order)!
  1405.  
  1406. ***
  1407.  
  1408. Jekyll v1.38, released 22/11/1992, some bugs fixed.
  1409.  
  1410. -       Major RTS/CTS-bug in serial routines fixed
  1411. -       Some bugs in Hyde fixed
  1412. -       BBS-list started
  1413. -       Now works OK on TT (You may want to use -oscr0 and -oser0)
  1414.  
  1415. ***
  1416.  
  1417. Jekyll v1.37,  released 18/11/1992, especially released for the
  1418. HCC-days at Utrecht, 20 & 21/11/1992. Just 1 bug fixed and a few changes
  1419. in v1.32 and v1.36 have finally been mentioned.
  1420.  
  1421. changes finally mentioned:
  1422. -       Cache size can now go up to 64K and caches are now
  1423.         dynamically allocated
  1424. -       4K-Caches for (chat)logfiles
  1425. -       Jekyll now returns a return-code, it is the amount of
  1426.         kilobytes sent this can be useful for access level-calculations
  1427.         if a BBS uses the host-mode
  1428. -       Host-mode now by default OFF, some sysops complained about
  1429.         it being by default on
  1430. -       Bug fixed that caused Freeze Dried to run Jekyll a few times
  1431.         when you installed it with an autostart-string and that
  1432.         caused QuickBBS to sometimes get incorrect descriptions
  1433.         like "Jekyll v1.32" etc.
  1434. bugfix:
  1435. -       A small bug in the (chat)log-caches fixed
  1436.  
  1437. ***
  1438.  
  1439. Jekyll v1.36,  released 04/11/1992,  eighth release version.  Not
  1440. many new features, bugs fixed. Development is stabilising.
  1441.  
  1442. The new features in v1.36 are:
  1443.  
  1444. -       Progress bar
  1445. -       GMUS-protocol  support:  select music files for  GigaMusic  and
  1446.         Ultraplayer from within Jekyll! (Ctrl-M, Ctrl-Cursors)
  1447. -       Switches have been reassigned to four letters so their
  1448.         meaning is clearer
  1449. -       Now MiNT/MultiTOS compatible
  1450. -       Chatlog, saves everything you and the remote type in a file  (-
  1451.         cout, -c_in & -chat)
  1452. -       Environment variable for configuration (JEKYLL=)
  1453. -       Files can be automatically deleted when succesfully sent (^..)
  1454. -       Screen routines improved, now work a lot better when Jekyll's
  1455.         own routines have been turned off, no more juddery scrolling
  1456. -       TT-ports can be used (-port)
  1457. -       Many bugs fixed and other small features added....
  1458.  
  1459. ***
  1460.  
  1461. Jekyll v1.32, released 29/06/1992.  Seventh release version,  now
  1462. with    host-mode ... Why is it, everytime we THINK Jekyll's done
  1463. with, it isn't? But it's really finished now ... :-/ ...
  1464.  
  1465. The new functions in Jekyll v1.32 are:
  1466.  
  1467. -       A host-mode: one side can view the directories  of  the
  1468.         other side and even request files from it!!! (Ctrl-H)
  1469.  
  1470.         This host-mode can be controlled in several ways:
  1471.                - path/file-locking (JEKYLL.LOK)
  1472.                - limit amount of time for requests (-ol and -ob)
  1473.                - limit amount of Kb's that can be requested (-ok)
  1474.                - limit amount of files  that  can  be  requested
  1475.                  (-ov)
  1476. -       A yell/page-function (CTRL  + J)  with  page-times  for
  1477.         BBSses (-ov).
  1478. -       Hyde  has been completely redesigned and re-written  in
  1479.         C. As a direct result it finally works.
  1480. -       The documentation  has been completely rewritten:  READ IT!
  1481. -       Some timeouts that can be useful for BBSes:
  1482.  
  1483.                - amount of time left to user (-ol)
  1484.                - disconnect after a certain period of no activity
  1485.                  (-on).
  1486.                - auto-locator in file selector
  1487. -       Deleting and renaming files is now possible from within
  1488.         the fileselector (CTRL + K and CTRL + N).
  1489. -       Connection info can be redisplayed any time (CTRL + Z).
  1490. -       Version number of Jekyll is now sent to the other  side
  1491.         (Remote uses ...).
  1492. -       The text in the file JEKYLL.BAN is  sent to  the  other
  1493.         side  via the chat window after   connection.  A   BBS
  1494.         can put some info in this file.
  1495. -       Auto-disconnect (-t) can be turned off (CTRL + C).
  1496. -       Jekyll prints the estimated time  left  for  the  files
  1497.         being sent/recvd.
  1498. -       Progress-counters for resume and view-buffer-loading.
  1499. -       View buffer is quicker with long files
  1500. -       You can now dump a screen of the view  buffer  to   the
  1501.         remote (CTRL + M).
  1502. -       A small clock in the upper black bar.
  1503. -       Duplex- and linefeed toggle in  terminal (CTRL + D  and
  1504.         CTRL + L).
  1505. -       Finally works OK on TT (I hope!!!!).
  1506. -       Bug fixed in calculation of free space on disk.
  1507. -       Switch -oq removed.
  1508. -       Switch -or and -op are now ON by default!
  1509. -       Switch -oh is set to 2 (RTS/CTS) by default!
  1510. -       A lot of little things and bugs fixed
  1511.  
  1512. ***
  1513.  
  1514. Jekyll v1.20, released 25/04/1992. Sixth release   version,   now
  1515. with data compression!
  1516.  
  1517. -       Real-time data compression.
  1518. -       TT-bugs fixed.
  1519. -       Possibly better CPS-rates at high bps rates.
  1520. -       Jekyll v0.94beta, v0.95beta, v1.00  and  v1.20  are   all
  1521.         compatible!    Jekyll v0.91beta and v0.93beta   are   now
  1522.         considered obsolete.
  1523. -       Diskspace checking is now right.
  1524. -       Switches -e and -l removed because they were useless.
  1525. -       Source made easier to port (I think :-)
  1526.  
  1527. ***
  1528.  
  1529. Jekyll v1.00, released 03/04/1992. Fifth release   version,    no
  1530. longer beta!
  1531.  
  1532. -       Own RS-232 routines that allow for a faster transfer   at
  1533.         high bps rates and have a built-in RTS/CTS patch.
  1534. -       Own screen routines that make the screen display a lot
  1535.         better.
  1536. -       Send and receive caches that will prevent the drive  from
  1537.         constantly reading and writing data. This way, the CPS at
  1538.         high bps rates may also increase and you won't be  nagged
  1539.         by the drive no longer.
  1540. -       Logfile  output has been improved (both in  quantity  and
  1541.         quality!)
  1542. -       All kinds of other bugs fixed and features updated.
  1543.  
  1544. ***
  1545.  
  1546. Jekyll v0.95beta, released 15/03/1992. Fourth release    version,
  1547. some things changed:
  1548.  
  1549. -       Block size is now configurable.
  1550. -       Baud rate is configurable.
  1551. -       Fall-back in case of an error: when an    error    occurs
  1552.         Jekyll will switch to 128 byte blocks.
  1553. -       Default block size set to 512 bytes instead of 1024 bytes.
  1554. -       Setup tester added.
  1555.  
  1556. This version IS compatible with 0.94beta.
  1557.  
  1558. ***
  1559.  
  1560. Jekyll v0.94beta, released 03/03/1992.  Third   release  version,
  1561. feedback  has  finally started! Lot's of things have changed   in
  1562. this version:
  1563.  
  1564. -       Fileviewer which enables you to view through files  (also
  1565.         through 1st Wordplus files!).
  1566. -       Some protocol updates.
  1567. -       Some rather major code cleanups.
  1568. -       Send queue viewer.
  1569. -       Intro screen has been changed.
  1570. -       This doc has been COMPLETELY  rewritten,   as  lot's   of
  1571.         peoples had trouble installing Jekyll.
  1572. -       It is now possible to abort Jekyll's handshake  procedure
  1573.         by pressing CTRL + X several times.
  1574. -       Simple terminal has been added.
  1575.  
  1576. And please note the fact that EVERYTHING you do is multitasking!
  1577. Viewing, loading of a file to view ... It's fully multitasking!
  1578.  
  1579. As version 0.93beta was incompatible with version 0.91beta, this
  1580. version is incompatible with 0.93beta ... Sorry guys!
  1581.  
  1582. ***
  1583.  
  1584. Jekyll v0.93beta, released 15/02/1992. Second  release   version,
  1585. incorporating, as new stuff:
  1586.  
  1587. -       Fully multitasking item selector.
  1588. -       Smart resume added.
  1589. -       Some bugs fixed, protocol updated.
  1590. -       Name changed from Jeckyll to Jekyll (thanks to Bart   van
  1591.         Herk for this ...)
  1592.  
  1593. Version 0.93beta is NOT compatible with version 0.91beta!
  1594.  
  1595. ***
  1596.  
  1597. Jeckyll v0.91beta, released 01/02/1992. The first beta version to
  1598. be released on QuickBBS ST Arnhem (2:281/801).
  1599.  
  1600. Appendix E: Jargon guide
  1601. ========================
  1602.  
  1603. In no other field of computer-related activity jargon is used  so
  1604. much  as in the modem-world.  For those new to modeming  a  short
  1605. list with descriptions of possibly vague words is given ...
  1606.  
  1607. A
  1608. -
  1609. ASCII     ASCII   stands   for   American   Standard   Code   for
  1610.           Information  Interchange,  and is (as the name says)  a
  1611.           standard  way  of saving data.  On  every  computer,  a
  1612.           certain  letter  has a number.  The  capital  'A',  for
  1613.           instance,  has number 65 in ASCII.  And like that,  all
  1614.           numbers  between  32 and 128  have  been  standardized,
  1615.           allowing  for  a great compatibility (an ST  owner  can
  1616.           call a IBM BBS, for instance).
  1617.  
  1618. ATA       On  a  modem  using the  Hayes  commandset,  it  means:
  1619.           Answer  the phone.  Every Hayes command is preceded  by
  1620.           AT (ATtention).
  1621.  
  1622. ATD       Lets  the  modem dial,  or,  when no  number  has  been
  1623.           specified,  pick up the phone. This only works when the
  1624.           modem supports the Hayes instruction set!
  1625.  
  1626. Autolocator    The    autolocator   was   implemented   in    the
  1627.                fileselector to easily locate a file. If you press
  1628.           a key (for instance,  the 'J'), Jekyll will jump to the
  1629.           first  file  that starts with a 'J'.  If you  press  it
  1630.           again,  Jekyll will jump to the next file with a   name
  1631. that starts with a 'J'.
  1632.  
  1633.  
  1634.  
  1635. B
  1636. -
  1637. Banner    A text you want to display upon connection.
  1638.  
  1639. Bpsrate   The  number  of bits that are transferred  through  the
  1640.           line every second (Bits Per Second).
  1641.  
  1642. C
  1643. -
  1644. Cache     Jekyll's  caches  save and load everything into  memory  before
  1645.           saving/loading it to/from disk.  This causes the drive to work  only
  1646.           scarcely,   which  is  much  nicer  to  hear  than  the
  1647.           usual rattle and shake.
  1648.  
  1649. Chat      Chatting  is talking to eachother using  the  keyboard.
  1650.           You type something, the remote types something, etc.
  1651.  
  1652. Commandline    Inherited   from  MS-DOS,   the  ST   provides   a
  1653.                convenient  way of passing variables  and  strings
  1654.           (like filenames, switches ...). When, on the desktop,
  1655. you double-click on a program with the extension ".TTP"  (Tos Takes Parameters),  the desktop  comes  up
  1656.           with  a  box  asking you to fill  in  the  commandline.
  1657.           Depending  on the application,  this can  be  anything,
  1658.           ranging  from the name of the fourth vice-president  in
  1659.           America, to the number '8'.
  1660.  
  1661. Compression    Compression is used to shrink files,  without loss
  1662.           of   data.   Compression  is  done  through   a   very
  1663.           complicated mathematic algorithm,  and as the algorithm
  1664.           becomes  more complex the compression will get  better.
  1665.           However,  the  time  required  to  compress  will  also
  1666.           increase.  Jekyll uses LZW compression,  which has just
  1667. the right balance between speed and efficiency.
  1668.  
  1669. CTRL      Short form of CONTROL. Used to indicate the CONTROL key
  1670.           on your keyboard has to be pressed.
  1671.  
  1672. Cursorkeys     The  cursorkeys are the keys used to  control  the
  1673.                cursor.   They  are  the  second  block  on   your
  1674.           keyboard,  together with the HELP and UNDO keys. INSERT
  1675.           and CLR-HOME are also placed here.
  1676.  
  1677. D
  1678. -
  1679. Desktop   The  desktop  is a program that allows  you  to  easily
  1680.           delete,  copy and rename files.  It was,  together with
  1681.           the operating system (TOS and GEM) burned into your ST,
  1682.           and  is  ALWAYS  present (there's  no  system  disk  or
  1683.           whatever required).
  1684.  
  1685. Directory    Either  a  'folder' on a  disk,  or  just  the  main
  1686.              directory (contents).
  1687.  
  1688. DTR       Data Terminal Ready.  Most modems are set up to hang up
  1689.           when the DTR gets lost (in other words:  when you reset
  1690.           or  turn off the computer).  A keyboard reset will  not
  1691.           cause the DTR signal to get lost!
  1692.  
  1693. F
  1694. -
  1695. File-attributes     Another thing inherited from MS-DOS.  If  you
  1696.                     look at a file on the desktop,  you only  see
  1697.           it's name,  and whether or not it's a program. However,
  1698.           internally,  the operating system keeps some  invisible
  1699.           attributes,  like whether the file was copied,  hidden,
  1700.           read-only, etc ...
  1701.  
  1702. Fileselector   The  GEM  fileselector probably  is  a  well-known
  1703.                entity.  It would have been nice to incorporate it
  1704.           into  Jekyll,  but that's just  simply  impossible.  So
  1705.           Jekyll has it's own fileselector,  of which a  complete
  1706.           description   can  be  found  in  section   V.I:   "The
  1707.           fileselector".
  1708.  
  1709. Full-duplex    A  full-duplex  modem is capable  of  transferring
  1710.                both  ways  across  (simulteaneously  sending  and
  1711.           receiving).  Jekyll  is a protocol that supports  full-
  1712.           duplex transfers.
  1713.  
  1714. Functionkeys   The  top  row  of your  keyboard  consists  of  10
  1715.                function keys,  labeled F1 to F10.  Their function
  1716.           depends on the program you're using:  in First WordPlus
  1717.           they can be used to set certain text-styles,  in Jekyll
  1718.           the user can define his own function keys (see  section
  1719.           IV.III: "JEKYLL.FKS").
  1720.  
  1721. H
  1722. -
  1723. Handshake    Every  Jekyll  tranfer is preceded  by  a  handshake
  1724.              between  the two Jekyll's.  During  this  handshake,
  1725.           the  two  Jekyll's get to  'know'  eachother,  and  the
  1726.           functions  each Jekyll supports.  Handshaking  is  also
  1727.           used on hardware level,  to tell the other computer  it
  1728.           has  to  stop sending data until the current  flow  has
  1729.           been processed.
  1730.  
  1731. Hayes     A company that builds modems, and that came up with the
  1732.           idea  of  creating a little programming  language  that
  1733.           enabled easy access to your modem.
  1734.  
  1735. Hyde      This program is the graphical shell around Jekyll: it allows
  1736.           you to easily configure Jekyll without losing track and
  1737.           sanity. It's really tremendous, works quick and simple,
  1738.           and oh yeah, I wrote it ...
  1739.  
  1740. L
  1741. -
  1742. Locked paths   Since  Jekyll  features a host mode  (see  section
  1743.                V.IV:  "The host mode"), a good protection of your
  1744.           drives is necessary.  Therefore the file JEKYLL.LOK was
  1745.           invented (see section IV.V: "JEKYLL.LOK").
  1746.  
  1747. M
  1748. -
  1749. Magics    This name might be misleading,  but no other one was
  1750.           found. The 'magic' option in Jekyll allow you to define
  1751.           a  number  of words that are converted  into  something
  1752.           else  when you type them.  You might wish  you  convert
  1753.           "shit"  into  "***!*!J&$(&$£!".   See  section   IV.II:
  1754.           "JEKYLL.MAG".
  1755.  
  1756. P
  1757. -
  1758. Page      "Paging" is often called "Yelling", and yells for/pages
  1759.           the  remote to come to the console,  so you can have  a
  1760.           chat with him.
  1761.  
  1762. R
  1763. -
  1764. Remote    "Remote"  refers  to 'the other  side',  whatever  'the
  1765.           other  side' may be (sysop,  your friend,  small  furry
  1766.           creature from Alpha Centauri B).
  1767.  
  1768. S
  1769. -
  1770. Shareware    Shareware is a kind of software that  is  completely
  1771.             free  to   try and use,  but if you use  the  program
  1772.           regulary,  you  are supposed to pay a small  amount  of
  1773.           money  to the author.  In Jekyll's case,  this  is  fl.
  1774.           25,- dutch guilders.
  1775.  
  1776. Switches  These are used to make Jekyll behave the way you'd like
  1777.           it to behave. Jekyll is HIGHLY configurable using these
  1778.           switches. Switches can be passed using the commandline,
  1779.           or  the  configuration  file  JEKYLL.CFG  (see  section
  1780.           IV.I: "JEKYLL.CFG").
  1781.  
  1782. W
  1783. -
  1784. Window    You  will probably know windows from the  GEM  desktop,
  1785.           and  various other programs.  When used in  conjunction
  1786.           with Jekyll every single part of the screen is called a
  1787.           window.
  1788.  
  1789. Wildcards     Wildcards, also  called   'jokers', are used when you want to send a lot  of
  1790.           files.   The  '*'  stands  for  zero  or  more   unknown
  1791.           characters,   and   a  '?'  stands  for   one   unknown
  1792.           character.   For   example, 'ME?AROID.*'   applies   to
  1793.           'MEGAROID.PRG',      'MEZAROID.PRX',     'MENAROID.BL',
  1794. 'METAROID' etc.
  1795.  
  1796. X
  1797. -
  1798. Xmodem    An  archaic  and obsolete protocol,  which  only  still
  1799.           exists  because it works on EVERY machine.  It is  very
  1800.           slow and extremely userUNfriendly.
  1801.  
  1802. Z
  1803. -
  1804. Zmodem    Used  to  be one of the  best  protocols  around.  Used
  1805.           to be marveled at for it's speed and  efficiency.  Used
  1806.           to be _THE_ big thing in modem-industry. Used.
  1807.  
  1808.